import Vue from 'vue'
import Vuex from 'vuex'
import getters from './getters'

Vue.use(Vuex)
// require.context('指定需要导入文件的路径'，'是否递归获取','正则匹配需要加载的文件类型')
const req = require.context('./modules', false, /\.js$/)
console.log(req, 'req')
// 获取数组的键
console.log(req.keys(), 'req.keys()')
// 去掉不需要的./和.js获取文件名
const mName = req.keys().map(item => item.split('./')[1]).map(item => item.split('.js')[0])
console.log(req.keys().map(req), 'map')
// 获取模块模型，返回数组
const mModule = req.keys().map(req)
const obj = {}
// 遍历模块对象，获取文件名为
mName.forEach((item, index) => {
  console.log(item, index)
  obj[item] = mModule[index].default
})
const store = new Vuex.Store({
  modules: obj,
  getters
})

export default store
